package com.example.mybatisplusdemo.model.domain;

import lombok.Data;

import java.time.LocalDate;
import java.time.LocalDateTime;
import java.util.List;

@Data
public class SegmentRequest {
    // 必需字段
    private String originAirportCode;  // 出发机场IATA代码
    private String destinationAirportCode; // 到达机场IATA代码
    private LocalDate departureDate;  // 出发日期

    // 多程行程专用字段
    private Integer stayDays; // 在此城市停留天数 (仅多程行程有效)

    // 可选扩展字段
    private List<TransferOption> transferOptions; // 中转要求
    private String departureTerminal;  // 偏好出发航站楼
    private String arrivalTerminal;    // 偏好到达航站楼

    // 中转选项模型
    @Data
    public static class TransferOption {
        private String airportCode; // 中转机场代码
        private String requirement; // "REQUIRED" 或 "FORBIDDEN"
        private Integer minMinutes = 60; // 最小中转时间
        private Integer maxMinutes = 240; // 最大中转时间
    }
}